local HeroLogic = require("hero.HeroLogic")
local HeroBook = require("hero.HeroBook")
local HeroEquip = require("hero.HeroEquip")
local HeroTenZhiHuan = require("hero.HeroTenZhiHuan")
local BagLogic = require("bag.BagLogic")
local HeroStrategyLogic = require("hero.HeroStrategyLogic")

-- 请求英雄详细信息:静态
function CG_HERO_BAG_STATIC(human,msg)
	HeroLogic.sendHeroBagStatic(human,msg.id, msg.tuJian)
end

-- 请求英雄详细信息:动态
function CG_HERO_BAG_DYNAMIC(human,msg)
	HeroLogic.sendHeroBagDynamic(human, msg.id, msg.index, true)
end

-- 请求英雄详细信息:动态
function CG_HERO_BAG_DYNAMIC_BY_ID(human,msg)
	HeroLogic.sendHeroBagDynamicByID(human, msg.heroID,msg.star)
end

-- 请求预览觉醒信息
function CG_HERO_JUEXING_QUERY(human,msg)
	HeroLogic.heroJueXingQuery(human,msg.id,msg.index)
end

-- 请求觉醒升星
function CG_HERO_JUEXING_DO(human,msg)
	HeroLogic.heroJueXingDo(human,msg.id,msg.index,msg.inputIDList, msg.inputIndexList)	
end

-- 购买容量
function CG_HERO_CAP_BUY(human)
	HeroLogic.buyHeroCap(human)
end

-- 锁定英雄
function CG_HERO_BAG_LOCK(human, msg)
	HeroLogic.lockHero(human, msg.type, msg.heroID, msg.heroIndex)
end

-- 英雄升级
function CG_HERO_LEVEL_UP(human, msg)
	HeroLogic.heroLvUp(human, msg.id, msg.index)
end

-- 英雄升阶查询
function CG_HERO_UPGRADE_QUERY(human, msg)
	HeroLogic.heroUpgradeQuery(human, msg.id, msg.index)
end

-- 英雄升阶
function CG_HERO_UPGRADE_DO(human, msg)
	HeroLogic.heroUpgradeDo(human, msg.id, msg.index)
end

-- 英雄图鉴查询
function CG_HERO_BOOK_QUERY_CS(human, msg)
    HeroBook.querySimple_CS(human, msg.camp)
end
	
-- 英雄图鉴列传
function CG_HERO_BOOK_LIEZHUAN_QUERY(human, msg)
	HeroBook.CG_HERO_BOOK_LIEZHUAN_QUERY(human,msg.id)
end

-- 英雄图鉴列传奖励
function CG_HERO_BOOK_LIEZHUAN_GET(human, msg)
	HeroBook.CG_HERO_BOOK_LIEZHUAN_GET(human, msg.id)
end

-- 请求英雄装备信息
function CG_HERO_EQUIP_QUERY(human, msg)
	HeroEquip.query(human, msg.id, msg.index)
end

-- 穿装备
function CG_HERO_EQUIP_PUTON(human, msg)
	HeroEquip.putOn(human, msg.heroID, msg.heroIndex, msg.bagIndex, nil)
end

-- 穿装备 一个英雄到另一个英雄
function CG_HERO_EQUIP_PUTON_ON_PUT(human, msg)
	HeroEquip.putOnHero(human, msg.heroID, msg.heroIndex, msg.putHeroID, msg.putHeroIndex, msg.putHeroPos)
end

-- 脱装备
function CG_HERO_EQUIP_PUTOFF(human, msg)
	HeroEquip.putOff(human, msg.heroID, msg.heroIndex, msg.pos, nil)
end

-- 一键穿装
function CG_HERO_EQUIP_PUTON_QUICK(human, msg)
	HeroEquip.putOnQuick(human, msg.heroID, msg.heroIndex, msg.equipID1, msg.equipID2, msg.equipID3, msg.equipID4, msg.equipID6)
end

-- 一键脱装
function CG_HERO_EQUIP_PUTOFF_QUICK(human, msg)
	HeroEquip.putOffQuick(human, msg.heroID, msg.heroIndex)
end

-- 激活水晶
function CG_SHUIJING_JIHUO(human, msg) 
    HeroEquip.jihuoShuijing(human, msg.heroID, msg.heroIndex)
end

-- 查询水晶转换信息
function CG_SHUIJING_TRANS_QUERY(human, msg)
    HeroEquip.shuijingTransQuery(human, msg.heroID, msg.heroIndex)
end

-- 水晶转换
function CG_SHUIJING_TRANS_DO(human, msg)
	HeroEquip.shuijingTransDo(human, msg.heroID, msg.heroIndex)
end

-- 水晶保存
function CG_SHUIJING_TRANS_SAVE(human, msg)
	HeroEquip.shuijingTransSave(human, msg.heroID, msg.heroIndex)
end

-- 水晶升级信息查询
function CG_SHUIJING_UPLV_QUERY(human, msg)
	HeroEquip.shuijingUpLvQuery(human, msg.type, msg.heroID, msg.heroIndex)
end

-- 水晶升级
function CG_SHUIJING_UPLV_DO (human, msg)
	HeroEquip.shuijingUpLvDo(human, msg.type, msg.heroID, msg.heroIndex)
end

-- 神器升级查询
function CG_SHENQI_UPLV_QUERY(human, msg)
	HeroEquip.shenqiUpLvQuery(human, msg.heroID, msg.heroIndex)
end

-- 神器升级
function CG_SHENQI_UPLV_DO(human, msg)
	HeroEquip.shenqiUpLvDo(human, msg.heroID, msg.heroIndex, msg.equipIDList, msg.equipCntList)
end

-- 查看分享英雄的信息
function CG_HERO_SHARE_DATA(human, msg)
	HeroLogic.shareData(human, msg.uuid, msg.heroIndex)
end


-- 重生查询
function CG_HERO_CHONGSHENG_QUERY(human,msg)
	HeroLogic.heroChongShengQuery(human,msg.id,msg.index)
end

-- 重生操作
function CG_HERO_CHONGSHENG_DO(human,msg)
	HeroLogic.heroChongShengDo(human,msg.id,msg.index)	
end

-- 回退查询
function CG_HERO_HUITUI_QUERY(human, msg)
	HeroLogic.sendHuituiQuery(human, msg.heroID, msg.heroIndex)
end

-- 回退操作
function CG_HERO_HUITUI(human, msg)
	HeroLogic.huituiHero(human, msg.heroID, msg.heroIndex)
end

function CG_HERO_LIKE(human)
    
end

function CG_HERO_STRATEGY_QUERY(human,msg)
    HeroStrategyLogic.StrategyQueryByHeroID(human,msg.heroID)
end

function CG_HERO_DETAIL_MSG_QUERY(human,msg)
    HeroStrategyLogic.heroDetailMsgQuery(human,msg.uuid,msg.heroIndex,msg.heroID)
end

function CG_HERO_GL_DOT_QUERY(human)
    HeroStrategyLogic.heroGlDot(human)
end

function CG_HERO_BAG_DOTS(human)
	HeroLogic.sendBagDots(human)
end

function CG_HERO_RESET_QUERY(human, msg)
	HeroLogic.resetHeroQuery(human, msg.heroID, msg.heroIndex)
end

function CG_HERO_RESET(human, msg)
	HeroLogic.resetHero(human, msg.heroID, msg.heroIndex)
end

function CG_HERO_TEN_ZHIHUAN_QUERY(human)
	HeroTenZhiHuan.query(human)
end

function CG_HERO_TEN_ZHIHUAN(human, msg)
	HeroTenZhiHuan.zhihuan(human, msg.fiveId, msg.heroIndexList)
end

function CG_HERO_BOOK_SINGLE_QUERY(human,msg)
    HeroBook.queryHeroBookById(human,msg.heroID,msg.star)
end